#!/usr/bin/env python
# -*- coding: utf-8 -*-

"""
查看用户数据文件中的所有用户
"""

import json
import os

def list_all_users():
    """列出所有用户"""
    users_file = os.path.join('gt_lms', 'data', 'users.json')
    
    if not os.path.exists(users_file):
        print(f"用户数据文件不存在: {users_file}")
        return
    
    try:
        with open(users_file, 'r', encoding='utf-8') as f:
            users_data = json.load(f)
        
        # 检查是否有"users"键
        if 'users' in users_data:
            users_dict = users_data['users']
            print(f"用户数据文件加载成功，共 {len(users_dict)} 个用户\n")
        else:
            users_dict = users_data
            print(f"用户数据文件加载成功，共 {len(users_dict)} 个用户\n")
        
        # 列出所有用户
        for user_id, user_data in users_dict.items():
            if isinstance(user_data, dict):
                name = user_data.get('name', '未知')
                email = user_data.get('email', '未知')
                user_type = user_data.get('user_type', '未知')
                print(f'{user_id}: {name} ({user_type}) - {email}')
                
                # 检查是否有姓名被截断
                if '测试学生' in name and len(name) < len('测试学生') + 3:
                    print(f'  -> 可能被截断的姓名: {name}')
            else:
                print(f'{user_id}: 数据格式不正确')
            
    except Exception as e:
        print(f"查看用户数据时出错: {e}")

if __name__ == "__main__":
    list_all_users()